#ifndef __PLAYER_UTILITY_PRIVATE_H__
#define __PLAYER_UTILITY_PRIVATE_H__

//#include <e32std.h>
#include <MdaAudioSamplePlayer.h>


class PlayerUtility;

class CPlayerUtilityPrivate : public CBase, public MMdaAudioPlayerCallback
    {
public:
    static CPlayerUtilityPrivate* NewL(const TDesC& aFileName, PlayerUtility *wrapper);
    static CPlayerUtilityPrivate* NewLC(const TDesC& aFileName, PlayerUtility *wrapper);
    ~CPlayerUtilityPrivate();
private:
    CPlayerUtilityPrivate(PlayerUtility *wrapper);
    void ConstructL(const TDesC& aFileName);
public:
    void Play();
    void Stop();
    void Pause();
    void SetVolume(int volume);
    TInt MaxVolume();
    TInt GetVolume(TInt& aVolume);
public: // from MMdaAudioToneObserver
	void MapcInitComplete(TInt aError, const TTimeIntervalMicroSeconds& aDuration);
	void MapcPlayComplete(TInt aError);
private:
    PlayerUtility           *q_ptr;
    CMdaAudioPlayerUtility  *iPlayUtility;
    TBool                   iPlaying,iPrepared;
};

#endif //__PLAYER_UTILITY_PRIVATE_H__
